home *** CD-ROM | disk | FTP | other *** search
/ CD ROM Paradise Collection 4 / CD ROM Paradise Collection 4 1995 Nov.iso / hobby / ast44src.zip / EXTERN.H < prev    next >
C/C++ Source or Header  |  1995-02-11  |  19KB  |  541 lines

  1. /*
  2. ** Astrolog (Version 4.40) File: extern.h
  3. **
  4. ** IMPORTANT NOTICE: The graphics database and chart display routines
  5. ** used in this program are Copyright (C) 1991-1995 by Walter D. Pullen
  6. ** (astara@u.washington.edu). Permission is granted to freely use and
  7. ** distribute these routines provided one doesn't sell, restrict, or
  8. ** profit from them in any way. Modification is allowed provided these
  9. ** notices remain with any altered or edited versions of the program.
  10. **
  11. ** The main planetary calculation routines used in this program have
  12. ** been Copyrighted and the core of this program is basically a
  13. ** conversion to C of the routines created by James Neely as listed in
  14. ** Michael Erlewine's 'Manual of Computer Programming for Astrologers',
  15. ** available from Matrix Software. The copyright gives us permission to
  16. ** use the routines for personal use but not to sell them or profit from
  17. ** them in any way.
  18. **
  19. ** The PostScript code within the core graphics routines are programmed
  20. ** and Copyright (C) 1992-1993 by Brian D. Willoughby
  21. ** (brianw@sounds.wa.com). Conditions are identical to those above.
  22. **
  23. ** The extended accurate ephemeris databases and formulas are from the
  24. ** calculation routines in the program "Placalc" and are programmed and
  25. ** Copyright (C) 1989,1991,1993 by Astrodienst AG and Alois Treindl
  26. ** (alois@azur.ch). The use of that source code is subject to
  27. ** regulations made by Astrodienst Zurich, and the code is not in the
  28. ** public domain. This copyright notice must not be changed or removed
  29. ** by any user of this program.
  30. **
  31. ** Initial programming 8/28,30, 9/10,13,16,20,23, 10/3,6,7, 11/7,10,21/1991.
  32. ** X Window graphics initially programmed 10/23-29/1991.
  33. ** PostScript graphics initially programmed 11/29-30/1992.
  34. ** Last code change made 1/29/1995.
  35. */
  36.  
  37. /*
  38. ******************************************************************************
  39. ** Function Declarations.
  40. ******************************************************************************
  41. */
  42.  
  43. #ifdef PROTO
  44. #define P(t) t
  45. #else
  46. #define P(t) ()
  47. #endif
  48.  
  49. /* From astrolog.c */
  50.  
  51. extern void InitColors P((void));
  52. extern void Action P((void));
  53. extern void InitVariables P((void));
  54. extern bool FProcessCommandLine P((char *));
  55. extern int NParseCommandLine P((char *, char **));
  56. extern int NPromptSwitches P((char *, char *[MAXSWITCHES]));
  57. extern int NProcessSwitchesRare P((int, char **, int, bool, bool, bool));
  58. extern bool FProcessSwitches P((int, char **));
  59.  
  60.  
  61. /* From data.c & data2.c */
  62.  
  63. #define MM ciCore.mon
  64. #define DD ciCore.day
  65. #define YY ciCore.yea
  66. #define TT ciCore.tim
  67. #define ZZ ciCore.zon
  68. #define SS ciCore.dst
  69. #define OO ciCore.lon
  70. #define AA ciCore.lat
  71.  
  72. #define Mon ciMain.mon
  73. #define Day ciMain.day
  74. #define Yea ciMain.yea
  75. #define Tim ciMain.tim
  76. #define Zon ciMain.zon
  77. #define Dst ciMain.dst
  78. #define Lon ciMain.lon
  79. #define Lat ciMain.lat
  80.  
  81. #define Mon2 ciTwin.mon
  82. #define Day2 ciTwin.day
  83. #define Yea2 ciTwin.yea
  84. #define Tim2 ciTwin.tim
  85. #define Zon2 ciTwin.zon
  86. #define Dst2 ciTwin.dst
  87. #define Lon2 ciTwin.lon
  88. #define Lat2 ciTwin.lat
  89.  
  90. #define ignorea(a) (aspectorb[a] <= 0.0)
  91.  
  92. extern US NEAR us;
  93. extern IS NEAR is;
  94. extern CI ciCore, ciMain, ciTwin, ciSave;
  95. extern CP cp1, cp2;
  96. extern FILE *S;
  97. extern real MC, Asc, T, RA;
  98.  
  99. extern real planet[], planetalt[], house[], ret[],
  100.   spacex[], spacey[], spacez[], force[];
  101. extern GridInfo FAR *grid;
  102. extern byte inhouse[];
  103. extern int starname[], kObjA[];
  104.  
  105. extern byte ignore[], ignore2[];
  106. extern real aspectangle[], aspectorb[], planetorb[], planetadd[];
  107. extern CONST int ruler2[], exalt[], rules[];
  108. extern int ruler1[], kMainA[], kRainbowA[], kElemA[], kAspA[];
  109. extern real objectinf[], houseinf[], aspectinf[], transitinf[];
  110.  
  111. extern CONST char *szAppName, *szSignName[], *szSignAbbrev[],
  112.   *szSignEnglish[], *szHouseTradition[], *szSystem[], *szAspectName[],
  113.   *szAspectGlyph[], *szAspectConfig[], *szElem[], *szMode[],
  114.   *szMonth[], *szDay[], *szZon[], *szDir[], *szSuffix[];
  115. extern CONST real rZon[];
  116. extern char *szObjName[], *szAspectAbbrev[];
  117. extern CONST char *szCnstlName[], *szCnstlAbbrev[], *szCnstlMeaning[],
  118.   *szCnstlGenitive[];
  119. extern CONST real starbright[], stardata[];
  120. extern char *szMindPart[], *szDesc[], *szDesire[], *szLifeArea[],
  121.   *szInteract[], *szTherefore[], *szModify[3][11];
  122.  
  123. extern CONST real rObjDist[], rObjYear[], rObjDay[],
  124.   rObjDiam[], rObjMass[], rObjAxis[];
  125. extern CONST byte cSatellite[];
  126. extern CONST PI pi[];
  127.  
  128. extern CONST byte errorcount[];
  129. extern CONST byte erroroffset[];
  130. extern CONST real errordata[];
  131. extern OE rgoe[];
  132. extern char *szMacro[48];
  133. extern CONST char *szColor[];
  134.  
  135.  
  136. /* From general.c */
  137.  
  138. #define PrintAltitude(deg) PrintSz(SzAltitude(deg))
  139. #define ErrorValR(sz, r) ErrorValN(sz, (int)r)
  140.  
  141. extern void SwapR P((real *, real *));
  142. extern int CchSz P((CONST char *));
  143. extern int NCompareSz P((CONST char *, CONST char *));
  144. extern void ClearB P((lpbyte, int));
  145. extern void CopyRgb P((byte *, byte *, int));
  146. extern real RSgn P((real));
  147. extern real Angle P((real, real));
  148. extern real Mod P((real));
  149. extern real ModRad P((real));
  150. extern long Dvd P((long, long));
  151. extern int Mod12 P((int));
  152. extern real DecToDeg P((real));
  153. extern real DegToDec P((real));
  154. extern real MinDistance P((real, real));
  155. extern real MinDifference P((real, real));
  156. extern real Midpoint P((real, real));
  157. extern char Dignify P((int, int));
  158. extern int DayInMonth P((int, int));
  159. extern int DaysInMonth P((int, int));
  160. extern int DayOfWeek P((int, int, int));
  161. extern int AddDay P((int, int, int, int));
  162. extern real GetOrb P((int, int, int));
  163. extern void Terminate P((int));
  164. extern void PrintSz P((CONST char *));
  165. extern void PrintCh P((char));
  166. extern void PrintSzScreen P((char *));
  167. extern void PrintNotice P((char *));
  168. extern void PrintWarning P((char *));
  169. extern void PrintError P((char *));
  170. extern void ErrorArgc P((char *));
  171. extern void ErrorValN P((char *, int));
  172. extern void ErrorArgv P((char *));
  173. extern void ErrorSwitch P((char *));
  174. extern void PrintTab P((char, int));
  175. extern void AnsiColor P((int));
  176. extern void PrintZodiac P((real));
  177. extern char *SzZodiac P((real));
  178. extern char *SzAltitude P((real));
  179. extern char *SzDegree P((real));
  180. extern char *SzDate P((int, int, int, int));
  181. extern char *SzTime P((int, int));
  182. extern char *SzTim P((real));
  183. extern char *SzZone P((real));
  184. extern char *SzLocation P((real, real));
  185. extern void GetTimeNow P((int *, int *, int *, real *, real));
  186. extern int NFromAltN P((int));
  187. extern char *ProcessProgname P((char *));
  188. extern char *SzPersist P((char *));
  189. extern lpbyte PAllocate P((long, bool, char *));
  190.  
  191.  
  192. /* From io.c */
  193.  
  194. extern FILE *FileOpen P((char *, int));
  195. extern bool FProcessSwitchFile P((char *, FILE *));
  196. extern bool FOutputData P((void));
  197. extern int NParseSz P((char *, int));
  198. extern real RParseSz P((char *, int));
  199. extern void InputString P((char *, char *));
  200. extern int NInputRange P((char *, int, int, int));
  201. extern real RInputRange P((char *, real, real, int));
  202. extern bool FInputData P((char *));
  203.  
  204.  
  205. /* From calc.c */
  206.  
  207. #define RBiorhythm(day, rate) (RSin(((day)/(rate))*rPi2)*100.0)
  208.  
  209. extern int HousePlaceIn P((real));
  210. extern void ComputeInHouses P((void));
  211. extern void HouseEqualMidheaven P((void));
  212. extern void HousePorphyryNeo P((void));
  213. extern void HouseWhole P((void));
  214. extern void HouseNull P((void));
  215. extern void ComputeHouses P((int));
  216. extern void ComputeStars P((real));
  217. extern real Decan P((real));
  218. extern void SphToRec P((real, real, real, real *, real *, real *));
  219. extern void ComputePlacalc P((real));
  220. extern real CastChart P((bool));
  221. extern bool FEnsureGrid P((void));
  222. extern bool FAcceptAspect P((int, int, int));
  223. extern void GetAspect P((real *, real *, real *, real *, int, int));
  224. extern void GetParallel P((real *, real *, real *, real *, int, int));
  225. extern bool FCreateGrid P((bool));
  226. extern bool FCreateGridRelation P((bool));
  227. extern void CreateElemTable P((ET *));
  228.  
  229.  
  230. /* From matrix.c */
  231.  
  232. #define EclToEqu(Z, L) CoorXform(Z, L, RFromD(rAxis))
  233. #define EquToEcl(Z, L) CoorXform(Z, L, RFromD(-rAxis))
  234. #define EquToLocal(Z, L, T) CoorXform(Z, L, T)
  235. #define JulianDayFromTime(t) ((t)*36525.0+2415020.0)
  236. #define IoeFromObj(obj) \
  237.   (obj < oMoo ? 0 : (obj <= cPlanet ? obj-2 : obj-uranLo+cPlanet-1))
  238. #define Tropical(deg) (deg - is.rSid + us.rZodiacOffset)
  239.  
  240. extern long MdyToJulian P((int, int, int));
  241. extern real MdytszToJulian P((int, int, int, real, real, real));
  242. extern void JulianToMdy P((real, int *, int *, int *));
  243. extern real ProcessInput P((bool));
  244. extern void PolToRec P((real, real, real *, real *));
  245. extern void RecToPol P((real, real, real *, real *));
  246. extern real RecToSph P((real, real, real));
  247. extern void CoorXform P((real *, real *, real));
  248. extern void ComputeVariables P((real *));
  249. extern real CuspMidheaven P((void));
  250. extern real CuspAscendant P((void));
  251. extern real CuspEastPoint P((void));
  252. extern real CuspPlacidus P((real, real, bool));
  253. extern void HousePlacidus P((void));
  254. extern void HouseKoch P((void));
  255. extern void HouseEqual P((void));
  256. extern void HouseCampanus P((void));
  257. extern void HouseMeridian P((void));
  258. extern void HouseRegiomontanus P((void));
  259. extern void HousePorphyry P((void));
  260. extern void HouseMorinus P((void));
  261. extern real CuspTopocentric P((real));
  262. extern void HouseTopocentric P((void));
  263. extern real ReadThree P((real, real, real));
  264. extern void RecToSph2 P((real, real, real, real *, real *, real *));
  265. extern void ErrorCorrect P((int, real *, real *, real *));
  266. extern void ProcessPlanet P((int, real));
  267. extern void ComputePlanets P((void));
  268. extern void ComputeLunar P((real *, real *, real *, real *));
  269.  
  270.  
  271. #ifdef PLACALC
  272. /* From placalc.c */
  273.  
  274. extern bool FPlacalcPlanet
  275.   P((int, double, int, real *, real *, real *, real *));
  276. extern double julday P((int, int, int, double, int));
  277. extern void revjul P((double, int, int *, int *, int *, double *));
  278. #endif
  279.  
  280.  
  281. /* From charts0.c */
  282.  
  283. extern void PrintW P((char *, int));
  284. extern void DisplayCredits P((void));
  285. extern void PrintS P((char *));
  286. extern void DisplaySwitches P((void));
  287. extern void DisplaySwitchesRare P((void));
  288. extern void PrintObjects P((void));
  289. extern void PrintAspects P((void));
  290. extern void PrintSigns P((void));
  291. #ifdef CONSTEL
  292. extern char *GetSzGenitive P((char *, char *));
  293. extern void GetSzConstel P((char *, int));
  294. extern void PrintConstellations P((void));
  295. #endif
  296. extern void PrintOrbit P((void));
  297. extern int NCompareSzPart P((int, int));
  298. extern void DisplayArabic P((void));
  299. #ifdef GRAPH
  300. extern void DisplayKeysX P((void));
  301. extern void DisplaySwitchesX P((void));
  302. #endif
  303. extern bool FPrintTables P((void));
  304.  
  305.  
  306. /* From charts1.c */
  307.  
  308. extern void ChartListing P((void));
  309. extern void ChartGrid P((void));
  310. extern void PrintGrand P((char, int, int, int, int));
  311. extern void DisplayGrands P((void));
  312. extern void PrintHouse P((int, int));
  313. extern void PrintWheelCenter P((int));
  314. extern void PrintWheelSlot P((int));
  315. extern void ChartWheel P((void));
  316. extern void ChartAspect P((void));
  317. extern void ChartMidpoint P((void));
  318. extern void ChartHorizon P((void));
  319. extern void ChartOrbit P((void));
  320. extern void ChartAstroGraph P((void));
  321. extern void PrintChart P((bool));
  322.  
  323.  
  324. /* From charts2.c */
  325.  
  326. extern void ChartGridRelation P((void));
  327. extern void ChartAspectRelation P((void));
  328. extern void ChartMidpointRelation P((void));
  329. extern void CastRelation P((bool));
  330. extern void PrintInDay P((int, int, int));
  331. extern void PrintAspect P((int, int, int, int, int, int, int, char));
  332. extern void ChartInDayInfluence P((void));
  333. extern void ChartTransitInfluence P((bool));
  334. extern void EclToHorizon P((real *, real *, real, real, real, real, real));
  335. extern void ChartCalendarMonth P((void));
  336. extern void ChartCalendarYear P((void));
  337. extern void DisplayRelation P((void));
  338.  
  339.  
  340. /* From charts3.c */
  341.  
  342. extern void ChartInDaySearch P((bool));
  343. extern void ChartTransitSearch P((bool));
  344. extern void ChartInDayHorizon P((void));
  345. extern void ChartEphemeris P((void));
  346.  
  347.  
  348. /* From intrpret.c */
  349.  
  350. #ifdef INTERPRET
  351. extern void FieldWord P((char *));
  352. extern void InterpretGeneral P((void));
  353. extern void InterpretAspectGeneral P((void));
  354. extern void InterpretLocation P((void));
  355. extern void InterpretAspect P((int, int));
  356. extern void InterpretGrid P((void));
  357. extern void InterpretMidpoint P((int, int));
  358. extern void InterpretInDay P((int, int, int));
  359. extern void InterpretTransit P((int, int, int));
  360. extern void InterpretSynastry P((void));
  361. extern void InterpretAspectRelation P((int, int));
  362. extern void InterpretGridRelation P((void));
  363. extern void InterpretMidpointRelation P((int, int));
  364. #endif
  365. extern void SortRank P((real *, int *, int));
  366. extern void ChartInfluence P((void));
  367.  
  368.  
  369. #ifdef GRAPH
  370. /* From xdata.c */
  371.  
  372. extern GS NEAR gs;
  373. extern GI NEAR gi;
  374.  
  375. #ifdef X11
  376. extern XSizeHints hint;
  377. extern char xkey[];
  378. extern char *szColorX[];
  379. extern KV rgbind[];
  380. extern KV fg, bg;
  381. #endif
  382.  
  383. extern CONST KV rgb[], rgbbmp[];
  384. extern KI kMainB[], kRainbowB[], kElemB[], kAspB[], kObjB[];
  385.  
  386. extern char szObjectFont[], *szDrawSign[], *szDrawObject[];
  387. extern CONST char szAspectFont[], *szDrawHouse[], *szDrawAspect[],
  388.   *szDrawCh[], *szWorldData[], *szDrawConstel[];
  389.  
  390.  
  391. /* From xgeneral.c */
  392.  
  393. #define BBmGet(B, X, Y) ((B)[(long)(Y)*(long)(gi.cbBmpRow) + ((X) >> 1)])
  394. #define FBmGet(B, X, Y) (BBmGet(B, X, Y) >> (((X)&1^1) << 2) & 15)
  395. #define BmSet(B, X, Y, O) BBmGet(B, X, Y) = BBmGet(B, X, Y) & \
  396.   15 << (((X)&1) << 2) | (O) << (((X)&1^1) << 2)
  397.  
  398. #define PutByte(A) putc((byte) (A), file)
  399. #define PutWord(A) PutByte(BLo(A)); PutByte(BHi(A))
  400. #define PutLong(A) PutWord(WLo(A)); PutWord(WHi(A))
  401.  
  402. #define DrawEdge(X1, Y1, X2, Y2) DrawBox(X1, Y1, X2, Y2, 1, 1)
  403. #define DrawEdgeAll() DrawEdge(0, 0, gs.xWin-1, gs.yWin-1)
  404. #define DrawLine(X1, Y1, X2, Y2) DrawDash(X1, Y1, X2, Y2, 0)
  405. #define DrawCircle(X, Y, RX, RY) \
  406.   DrawEllipse((X)-(RX), (Y)-(RY), (X)+(RX), (Y)+(RY))
  407.  
  408. extern void DrawColor P((KI));
  409. extern void DrawPoint P((int, int));
  410. extern void DrawSpot P((int, int));
  411. extern void DrawBlock P((int, int, int, int));
  412. extern void DrawBox P((int, int, int, int, int, int));
  413. extern void DrawClearScreen P((void));
  414. extern void DrawDash P((int, int, int, int, int));
  415. extern void DrawWrap P((int, int, int, int, int, int));
  416. extern void ClipLesser P((int *, int *, int *, int *, int));
  417. extern void ClipGreater P((int *, int *, int *, int *, int));
  418. extern void DrawClip P((int, int, int, int, int, int, int, int, int));
  419. extern void DrawEllipse P((int, int, int, int));
  420. extern void DrawSz P((CONST char *, int, int, int));
  421. extern void DrawSign P((int, int, int));
  422. extern void DrawHouse P((int, int, int));
  423. extern void DrawObject P((int, int, int));
  424. extern void DrawAspect P((int, int, int));
  425. extern int NFromPch P((CONST char **));
  426. extern void DrawTurtle P((CONST char *, int, int));
  427.  
  428.  
  429. /* From xdevice.c */
  430.  
  431. #ifdef META
  432. /* Macros to output the various metafile commands used. */
  433.  
  434. #define MetaRecord(S, R) MetaLong((long)(S)); MetaWord(R)
  435. #define MetaSelectObject(O) MetaRecord(4, 0x12D); MetaWord(O)
  436. #define MetaDeleteObject(O) MetaRecord(4, 0x1F0); MetaWord(O)
  437. #define MetaSaveDc() MetaRecord(3, 0x01E)
  438. #define MetaRestoreDc() MetaRecord(4, 0x127); MetaWord((word)-1)
  439. #define MetaWindowOrg(X, Y) MetaRecord(5, 0x20B); MetaWord(Y); MetaWord(X)
  440. #define MetaWindowExt(X, Y) MetaRecord(5, 0x20C); MetaWord(Y); MetaWord(X)
  441. #define MetaCreatePen(S, W, C) MetaRecord(8, 0x2FA); MetaWord(S); \
  442.   MetaWord(W); MetaWord(W); MetaLong(C)
  443. #define MetaCreateBrush(S, C) MetaRecord(7, 0x2FC); \
  444.   MetaWord(S); MetaLong(C); MetaWord(0 /* Not used */);
  445. #define MetaCreateFont(S, X, Y, C) MetaRecord(12+(S), 0x2FB); MetaWord(Y); \
  446.   MetaWord(X); MetaWord(0 /* Angle */); MetaWord(0 /* Not used */); \
  447.   MetaWord(400 /* Normal Weight */); MetaWord(0 /* Italic, Underline */); \
  448.   MetaWord(WFromBB(0 /* Strikeout */, C)); \
  449.   MetaWord(WFromBB(4 /* TrueType */, 0 /* Clip */))
  450. #define MetaBkMode(M) MetaRecord(4, 0x102); MetaWord(M)
  451. #define MetaTextAlign(A) MetaRecord(4, 0x12E); MetaWord(A)
  452. #define MetaTextColor(C) MetaRecord(5, 0x209); MetaLong(C);
  453. #define MetaTextOut(X, Y, S) MetaRecord(7+((S)+1)/2, 0xA32); \
  454.   MetaWord(Y); MetaWord(X); MetaWord(S); MetaWord(0 /* ETO */)
  455. #define MetaRectangle(X1, Y1, X2, Y2) MetaRecord(7, 0x41B); \
  456.   MetaWord(Y2); MetaWord(X2); MetaWord(Y1); MetaWord(X1)
  457. #define MetaEllipse(X1, Y1, X2, Y2) MetaRecord(7, 0x418); \
  458.   MetaWord(Y2); MetaWord(X2); MetaWord(Y1); MetaWord(X1)
  459. #define MetaEscape(S) MetaRecord((S), 0x626); \
  460.   MetaWord(15 /* MFCOMMENT */); MetaWord(((S)-5)*2 /* Bytes in comment */);
  461. #endif /* META */
  462.  
  463. extern void WriteXBitmap P((FILE *, char *, char));
  464. extern void WriteAscii P((FILE *));
  465. extern void WriteBmp P((FILE *));
  466. extern void BeginFileX P((void));
  467. extern void EndFileX P((void));
  468. extern void PsStrokeForce P((void));
  469. extern void PsStroke P((int));
  470. extern void PsLineCap P((bool));
  471. extern void PsDash P((int));
  472. extern void PsLineWidth P((int));
  473. extern void PsFont P((int));
  474. extern void PsBegin P((void));
  475. extern void PsEnd P((void));
  476. extern void MetaWord P((word));
  477. extern void MetaLong P((long));
  478. extern void MetaSelect P((void));
  479. extern void MetaInit P((void));
  480. extern void WriteMeta P((FILE *));
  481. extern int MouseInit P((int, int));
  482. extern void MouseShow P((bool));
  483. extern bool MouseStatus P((int *, int *, int *));
  484.  
  485.  
  486. /* From xcharts0.c */
  487.  
  488. extern int DrawPrint P((char *, int, int));
  489. extern void DrawInfo P((void));
  490. extern bool FReadWorldData P((char FAR **, char FAR **, char FAR **));
  491. extern bool FGlobeCalc P((real, real, int *, int *, int, int, int, int, int));
  492. extern void DrawLeyLine P((real, real, real, real));
  493. extern void DrawLeyLines P((int));
  494. extern void DrawMap P((bool, bool, int));
  495. extern void DrawChartX P((void));
  496.  
  497.  
  498. /* From xcharts1.c */
  499.  
  500. extern void XChartWheel P((void));
  501. extern void XChartAstroGraph P((void));
  502. extern void XChartGrid P((void));
  503. extern void XChartHorizon P((void));
  504. extern void XChartHorizonSky P((void));
  505. extern void XChartOrbit P((void));
  506. extern void DrawArrow P((int, int, int, int));
  507. extern void XChartDispositor P((void));
  508. extern void XChartCalendar P((void));
  509. extern void XChartEphemeris P((void));
  510.  
  511.  
  512. /* From xcharts2.c */
  513.  
  514. extern bool FProper P((int));
  515. extern void FillSymbolRing P((real *));
  516. extern void FillSymbolLine P((real *));
  517. extern real HousePlaceInX P((real));
  518. extern void XChartWheelRelation P((void));
  519. extern void XChartGridRelation P((void));
  520. extern void XChartBiorhythm P((void));
  521.  
  522.  
  523. /* From xscreen.c */
  524.  
  525. extern void InitColorsX P((void));
  526. #ifdef ISG
  527. extern void BeginX P((void));
  528. extern void AddTime P((int, int));
  529. extern void Animate P((int, int));
  530. extern void CommandLineX P((void));
  531. extern void SquareX P((int *, int *, int));
  532. extern void InteractX P((void));
  533. extern void EndX P((void));
  534. #endif
  535. extern int NProcessSwitchesX P((int, char **, int, bool, bool, bool));
  536. extern int NProcessSwitchesRareX P((int, char **, int));
  537. extern bool FActionX P((void));
  538. #endif /* GRAPH */
  539.  
  540. /* extern.h */
  541.